#ifndef ALGORITHMDIALOGBASE_H
#define ALGORITHMDIALOGBASE_H

#include <QObject>
#include <QWidget>
#include <QPushButton>

class AlgorithmDialogBase : public QWidget
{
    Q_OBJECT
public:
    explicit AlgorithmDialogBase(QWidget *parent = nullptr, QString algorithm = "",QString algorithmMovie = "", QSize size = QSize(320, 240));
    virtual ~ AlgorithmDialogBase();
public slots:
    void sendOutput();
    void setAlgorithm(QString algorithm, QString algorithmMovie, QSize size);
    virtual void execAlgorithm() = 0;

signals:
    // 执行算法按钮点击后需要发射的信号
    void doWork(QVector<QString> strVector);
protected:
    // 算法输出容器
    QVector<QString> strVector;
public:
    // 算法名称
    QString algorithm;
    // 算法动画路径
    QString algorithmMovie;
    // 执行算法按钮
    QPushButton *btnDoWork;
};

#endif // ALGORITHMDIALOGBASE_H
